<template>
	<!-- 商品详情页 -->
	<view class="goods_detail">
		<!-- 轮播图 -->
		<swiper v-for="(item,index) in swipers" :key="index" :indicator-dots="true" :autoplay="true" :interval="3000"
		 :duration="1000">
			<swiper-item>
				<image :src="item.src"></image>
			</swiper-item>
		</swiper>
		<view class="box1">
			<view class="price">
				<text>￥{{info.sell_price}}</text>
				<text>￥{{info.market_price}}</text>
			</view>
			<view class="goods_name">
				{{info.title}}
			</view>
		</view>
		<view class="line"></view>
		<view class="box2">
			<view>货号：{{info.goods_no}}</view>
			<view>库存：{{info.stock_quantity}}</view>
		</view>
		<view class="line"></view>
		<view class="box3">
			<view class="tit">详情页面</view>
			<view class="content">
				<rich-text :nodes="content"></rich-text>
			</view>
		</view>
		<!-- 引入导航插件 -->
		<view class="nav">
			<uni-goods-nav :fill="true" :options="options" :buttonGroup="buttonGroup" @click="onClick" @buttonClick="buttonClick" />
		</view>
	</view>
</template>

<script>
	import uniGoodsNav from '@/uni_modules/uni-goods-nav/components/uni-goods-nav/uni-goods-nav.vue'
	export default {
		data() {
			return {
				id: 0,
				swipers: [],
				info: {},
				content: '',
				options: [{
					icon: 'headphones',
					text: '客服'
				}, {
					icon: 'shop',
					text: '店铺',
					info: 2,
					infoBackgroundColor: '#007aff',
					infoColor: "red"
				}, {
					icon: 'cart',
					text: '购物车',
					info: 0
				}],
				buttonGroup: [{
						text: '加入购物车',
						backgroundColor: '#ff0000',
						color: '#fff'
					},
					{
						text: '立即购买',
						backgroundColor: '#ffa200',
						color: '#fff'
					}
				]
			}
		},
		methods: {
			// 获取详情页轮播图
			async getSwipers() {
				const res = await this.$myRequest({
					url: '/api/getthumimages/' + this.id
				})
				console.log(res)
				this.swipers = res.data.message
			},
			async getDetailInfo() {
				const res = await this.$myRequest({
					url: '/api/goods/getinfo/' + this.id
				})
				console.log(res)
				this.info = res.data.message[0]

			},
			async getDetailContent() {
				const res = await this.$myRequest({
					url: 'api/goods/getdesc' + this.id
				})
				console.log(res)
				this.content = res.data.message[0].content
			},
			// 导航插件方法
			onClick(e) {
				// 左侧三个按钮的点击事件
				uni.showToast({
					title: `点击${e.content.text}`,
					icon: 'none'
				})
			},
			buttonClick(e) {
				// 右侧两个事件
				console.log(e)
				this.options[2].info++
			}
		},
		onLoad(options) {
			console.log(options)
			this.id = options.id
			this.getSwipers()
			this.getDetailInfo()
		},
		components: {
			uniGoodsNav
		},
		onPullDownRefresh() {
			this.swipers = []
			this.info = {}
			setTimeout(() => {
				this.getSwipers(() => {
						uni.stopPullDownRefresh()
					}),
					this.getDetailInfo(() => {
						uni.stopPullDownRefresh()
					})
			}, 1000)
		}
	}
</script>

<style lang="scss">
	.goods_detail {
		swiper {
			width: 700rpx;

			image {
				width: 100%;
				height: 100%;
			}
		}

		.box1 {
			padding: 10px;
			.price {
				font-size: 35rpx;
				color: $shop-color;

				text:nth-child(2) {
					color: #ccc;
					font-size: 28rpx;
					text-decoration: line-through;
					margin-left: 20rpx;
				}
			}

			.goods_name {
				font-size: 32rpx;
				line-height: 60rpx;
			}
		}
	}

	.box2 {
		padding: 0 10px;
		font-size: 32rpx;
		line-height: 60rpx;
	}

	.box3 {
		padding-bottom: 50px;
		.tit {
			font-size: 32rpx;
			padding-left: 10px;
			border-bottom: 1px solid #eee;
			line-height: 70rpx;
		}

		.content {
			padding: 10px;
			font-size: 28rpx;
			color: #333;
			line-height: 50rpx;
		}
	}
	
	.line {
		height: 10rpx;
		width: 750rpx;
		background-color: #eee;
	}
	.nav{
		position: fixed;
		bottom: 0;
		width: 100%;
	}
</style>
